package com.dep.util;

import javax.servlet.ServletException;

import org.directwebremoting.Container;
import org.directwebremoting.ServerContextFactory;
import org.directwebremoting.event.ScriptSessionEvent;
import org.directwebremoting.event.ScriptSessionListener;
import org.directwebremoting.extend.ScriptSessionManager;
import org.directwebremoting.servlet.DwrServlet;

/****
		 * 此类帮助我们在ScriptSession 创建和销毁的时候处理一些事情
		 * @author xiaoyou11@hotmail.com
		 *
 */
public class DwrScriptSessionManagerUtil extends DwrServlet {

	private static final long serialVersionUID = -7504612622407420071L;

	public void init()  throws ServletException {

		Container container = ServerContextFactory.get().getContainer();
		ScriptSessionManager manager = container.getBean(ScriptSessionManager.class);
		ScriptSessionListener listener = new ScriptSessionListener() {

			public void sessionCreated(ScriptSessionEvent ev) {
			/*	HttpSession session = WebContextFactory.get().getSession();
			    String userId = (String) session.getAttribute("userId");
			    ev.getSession().setAttribute("userId", userId);
			 */
				System.out.println("a ScriptSession is created!");

			}

			public void sessionDestroyed(ScriptSessionEvent ev) {
				System.out.println("a ScriptSession is distroyed");
			}
		};

		manager.addScriptSessionListener(listener);
	}
}